﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Database;

namespace Fabrica10.Negocios
{
    public class GerenciamentoDepartamentos
    {

        //Cadastro de Departamentos
        public Departamento CadastrarDepartamento(string Nome)
        { 
            Departamento departamento = new Departamento();
            departamento.Nome = Nome;

            var context = new DataClasses1DataContext();
            context.Departamentos.InsertOnSubmit(departamento);
            context.SubmitChanges();

            return departamento;
        }

        
        //Atualiza Departamento
        public void AtualizaDepartamento(int idDepartamento, string novonome)
        {
            var context = new DataClasses1DataContext();
            Departamento departamento = (from f in context.Departamentos
                         where f.Id == idDepartamento
                         select f).Single();

            departamento.Nome = novonome;
            context.SubmitChanges();
        }

        public void ApagarDepartamento(int idDepartamento)
        {
            var context = new DataClasses1DataContext();
            Departamento departamento = (from f in context.Departamentos
                                         where f.Id == idDepartamento
                                         select f).Single();
            context.Departamentos.DeleteOnSubmit(departamento);
            context.SubmitChanges();
        }

        //get departamento        
        public List<Departamento> ListaDepartamentos()
        {
            var context = new DataClasses1DataContext();
            List<Departamento> listaDepartamentos = new List<Departamento>();
            foreach (Departamento d in context.Departamentos)
            {
                listaDepartamentos.Add(d);
            }
            return listaDepartamentos;
        }

        public List<Departamento> ListaDepartamentos(string nome)
        {
            var ctx = new DataClasses1DataContext();
            var qry = from d in ctx.Departamentos
                      where d.Nome.Contains(nome)
                      select d;
            return qry.ToList();
        }

    }
}
